home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2001 May / SGI IRIX Base Documentation 2001 May.iso / usr / share / catman / p_man / cat2 / standard / swapctl.z / swapctl
Encoding:
Text File  |  1998-10-20  |  37.0 KB  |  327 lines

  1.  
  2.  
  3.  
  4. sssswwwwaaaappppccccttttllll((((2222))))                                                          sssswwwwaaaappppccccttttllll((((2222))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      _ssss_wwww_aaaa_pppp_cccc_tttt_llll - manage swap space
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ssss_yyyy_ssss_////_ssss_tttt_aaaa_tttt_...._hhhh_>>>>
  13.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ssss_yyyy_ssss_////_ssss_wwww_aaaa_pppp_...._hhhh_>>>>
  14.      _iiii_nnnn_tttt _ssss_wwww_aaaa_pppp_cccc_tttt_llll_((((_iiii_nnnn_tttt _cccc_mmmm_dddd_,,,, _vvvv_oooo_iiii_dddd _****_aaaa_rrrr_gggg_))))_;;;;
  15.  
  16. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  17.      _ssss_wwww_aaaa_pppp_cccc_tttt_llll adds, deletes, or returns information about swap resources.  Swap
  18.      resources can be local disk partitions (block devices), local file system
  19.      files, and files on file systems mounted via nfs.  _c_m_d specifies one of
  20.      the following options contained in _<<<<_ssss_yyyy_ssss_////_ssss_wwww_aaaa_pppp_...._hhhh_>>>>:
  21.  
  22.           _SSSS_CCCC______AAAA_DDDD_DDDD         _////_**** _aaaa_dddd_dddd _aaaa _rrrr_eeee_ssss_oooo_uuuu_rrrr_cccc_eeee _ffff_oooo_rrrr _ssss_wwww_aaaa_pppp_pppp_iiii_nnnn_gggg _****_////
  23.           _SSSS_CCCC______LLLL_IIII_SSSS_TTTT        _////_**** _llll_iiii_ssss_tttt _tttt_hhhh_eeee _rrrr_eeee_ssss_oooo_uuuu_rrrr_cccc_eeee_ssss _ffff_oooo_rrrr _ssss_wwww_aaaa_pppp_pppp_iiii_nnnn_gggg _****_////
  24.           _SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE      _////_**** _rrrr_eeee_mmmm_oooo_vvvv_eeee _aaaa _rrrr_eeee_ssss_oooo_uuuu_rrrr_cccc_eeee _ffff_oooo_rrrr _ssss_wwww_aaaa_pppp_pppp_iiii_nnnn_gggg _****_////
  25.           _SSSS_CCCC______GGGG_EEEE_TTTT_NNNN_SSSS_WWWW_PPPP     _////_**** _rrrr_eeee_tttt_uuuu_rrrr_nnnn _nnnn_uuuu_mmmm_bbbb_eeee_rrrr _oooo_ffff _ssss_wwww_aaaa_pppp _rrrr_eeee_ssss_oooo_uuuu_rrrr_cccc_eeee_ssss _****_////
  26.           _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD      _////_**** _aaaa_dddd_dddd _aaaa _rrrr_eeee_ssss_oooo_uuuu_rrrr_cccc_eeee _ffff_oooo_rrrr _ssss_wwww_aaaa_pppp_pppp_iiii_nnnn_gggg _****_////
  27.           _SSSS_CCCC______LLLL_RRRR_EEEE_MMMM_OOOO_VVVV_EEEE     _////_**** _rrrr_eeee_mmmm_oooo_vvvv_eeee _aaaa _rrrr_eeee_ssss_oooo_uuuu_rrrr_cccc_eeee _ffff_oooo_rrrr _ssss_wwww_aaaa_pppp_pppp_iiii_nnnn_gggg _****_////
  28.           _SSSS_CCCC______GGGG_EEEE_TTTT_FFFF_RRRR_EEEE_EEEE_SSSS_WWWW_AAAA_PPPP _////_**** _gggg_eeee_tttt _aaaa_mmmm_oooo_uuuu_nnnn_tttt _oooo_ffff _ffff_rrrr_eeee_eeee _ssss_wwww_aaaa_pppp _****_////
  29.           _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_MMMM_AAAA_XXXX  _////_**** _gggg_eeee_tttt _mmmm_aaaa_xxxx_iiii_mmmm_uuuu_mmmm _aaaa_mmmm_oooo_uuuu_nnnn_tttt _oooo_ffff _pppp_hhhh_yyyy_ssss_iiii_cccc_aaaa_llll _ssss_wwww_aaaa_pppp _****_////
  30.           _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_VVVV_IIII_RRRR_TTTT _////_**** _gggg_eeee_tttt _aaaa_mmmm_oooo_uuuu_nnnn_tttt _oooo_ffff _vvvv_iiii_rrrr_tttt_uuuu_aaaa_llll _ssss_wwww_aaaa_pppp _****_////
  31.           _SSSS_CCCC______GGGG_EEEE_TTTT_RRRR_EEEE_SSSS_VVVV_SSSS_WWWW_AAAA_PPPP _////_**** _gggg_eeee_tttt _aaaa_mmmm_oooo_uuuu_nnnn_tttt _oooo_ffff _rrrr_eeee_ssss_eeee_rrrr_vvvv_eeee_dddd _llll_oooo_gggg_iiii_cccc_aaaa_llll _ssss_wwww_aaaa_pppp _****_////
  32.           _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_TTTT_OOOO_TTTT  _////_**** _gggg_eeee_tttt _cccc_uuuu_rrrr_rrrr_eeee_nnnn_tttt _aaaa_mmmm_oooo_uuuu_nnnn_tttt _oooo_ffff _pppp_hhhh_yyyy_ssss_iiii_cccc_aaaa_llll _ssss_wwww_aaaa_pppp _****_////
  33.           _SSSS_CCCC______GGGG_EEEE_TTTT_LLLL_SSSS_WWWW_AAAA_PPPP_TTTT_OOOO_TTTT _////_**** _gggg_eeee_tttt _aaaa_mmmm_oooo_uuuu_nnnn_tttt _oooo_ffff _llll_oooo_gggg_iiii_cccc_aaaa_llll _ssss_wwww_aaaa_pppp _****_////
  34.      When _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD is specified, _a_r_g is a pointer to a _xxxx_ssss_wwww_aaaa_pppp_rrrr_eeee_ssss structure
  35.      containing the following members:
  36.  
  37.           _cccc_hhhh_aaaa_rrrr        _****_ssss_rrrr______nnnn_aaaa_mmmm_eeee_;;;;    _////_**** _pppp_aaaa_tttt_hhhh_nnnn_aaaa_mmmm_eeee _oooo_ffff _rrrr_eeee_ssss_oooo_uuuu_rrrr_cccc_eeee _****_////
  38.           _oooo_ffff_ffff______tttt       _ssss_rrrr______ssss_tttt_aaaa_rrrr_tttt_;;;;    _////_**** _oooo_ffff_ffff_ssss_eeee_tttt _tttt_oooo _ssss_tttt_aaaa_rrrr_tttt _oooo_ffff _ssss_wwww_aaaa_pppp _aaaa_rrrr_eeee_aaaa _****_////
  39.           _oooo_ffff_ffff______tttt       _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh_;;;;   _////_**** _llll_eeee_nnnn_gggg_tttt_hhhh _oooo_ffff _ssss_wwww_aaaa_pppp _aaaa_rrrr_eeee_aaaa _****_////
  40.           _oooo_ffff_ffff______tttt       _ssss_rrrr______mmmm_aaaa_xxxx_llll_eeee_nnnn_gggg_tttt_hhhh_;;;;_////_**** _mmmm_aaaa_xxxx _llll_eeee_nnnn_gggg_tttt_hhhh _****_////
  41.           _oooo_ffff_ffff______tttt       _ssss_rrrr______vvvv_llll_eeee_nnnn_gggg_tttt_hhhh_;;;;  _////_**** _vvvv_iiii_rrrr_tttt_uuuu_aaaa_llll _llll_eeee_nnnn_gggg_tttt_hhhh _****_////
  42.           _ssss_iiii_gggg_nnnn_eeee_dddd _cccc_hhhh_aaaa_rrrr _ssss_rrrr______pppp_rrrr_iiii_;;;;      _////_**** _pppp_rrrr_iiii_oooo_rrrr_iiii_tttt_yyyy _****_////
  43.      _ssss_rrrr______ssss_tttt_aaaa_rrrr_tttt, _ssss_rrrr______mmmm_aaaa_xxxx_llll_eeee_nnnn_gggg_tttt_hhhh, _ssss_rrrr______vvvv_llll_eeee_nnnn_gggg_tttt_hhhh, and _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh are specified in 512-
  44.      byte blocks.  _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh specifies the number of blocks of the specified
  45.      resource that should be used for new swap area.  It must be less than or
  46.      equal to the size of the resource (e.g. file size or partition size).  If
  47.      a -1 is specified, _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh, _ssss_rrrr______mmmm_aaaa_xxxx_llll_eeee_nnnn_gggg_tttt_hhhh, and _ssss_rrrr______vvvv_llll_eeee_nnnn_gggg_tttt_hhhh are all set to
  48.      the size of the resource.  _ssss_rrrr______mmmm_aaaa_xxxx_llll_eeee_nnnn_gggg_tttt_hhhh specifies the number of blocks
  49.      the specified resource should, if required, be grown to.  This option is
  50.      currently unsupported, and _ssss_rrrr______mmmm_aaaa_xxxx_llll_eeee_nnnn_gggg_tttt_hhhh should always be set equal to
  51.      _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh.  _ssss_rrrr______vvvv_llll_eeee_nnnn_gggg_tttt_hhhh specifies the number of blocks the system should
  52.      assume the new swap area can handle.  Normally, this should be equal to
  53.      _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh - meaning that the system will never over commit its memory
  54.      resources.  If _ssss_rrrr______vvvv_llll_eeee_nnnn_gggg_tttt_hhhh is set larger than _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh, then the system
  55.      believes that it has more swap space than it really does.  As long as no
  56.      process actually requires that space, there is no problem.  This permits
  57.  
  58.  
  59.                                                                         PPPPaaaaggggeeee 1111
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66. sssswwwwaaaappppccccttttllll((((2222))))                                                          sssswwwwaaaappppccccttttllll((((2222))))
  67.  
  68.  
  69.  
  70.      very large applications that wish to _f_o_r_k(2) but have no intention of
  71.      creating two large processes, to do so without requiring a lot of swap
  72.      space that is really not needed.  It also permits applications that have
  73.      sparse data to effectively run on machines with small swap spaces.
  74.      Because the system can in fact over commit its memory resources,
  75.      deadlocks can result where there is no more memory and no more swap
  76.      space.  These deadlocks are detected by the system and an appropriate
  77.      process is killed that will permit the system to continue operating.
  78.      _ssss_rrrr______pppp_rrrr_iiii set the priority of the new swap area.  Swap areas with a higher
  79.      priority are allocated from first.  If _ssss_rrrr______pppp_rrrr_iiii is set to -1 the system
  80.      will assign the priority based on the type of swap resource.  Highest
  81.      priority (0) is the default for block devices.  Priority 2 for local file
  82.      system files, and priority 4 for nfs mounted files.
  83.  
  84.      The _ssss_rrrr______ssss_tttt_aaaa_rrrr_tttt value will be rounded up to the next multiple of the system
  85.      swap page size (4096 bytes or 16384 depending on the return value of the
  86.      _g_e_t_p_a_g_e_s_i_z_e(2) system call).  The _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh, _ssss_rrrr______vvvv_llll_eeee_nnnn_gggg_tttt_hhhh, and _ssss_rrrr______mmmm_aaaa_xxxx_llll_eeee_nnnn_gggg_tttt_hhhh
  87.      values will be rounded down to the next multiple of the system swap page
  88.      size.
  89.  
  90.      When _SSSS_CCCC______AAAA_DDDD_DDDD or _SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE is specified, _a_r_g is a pointer to a _ssss_wwww_aaaa_pppp_rrrr_eeee_ssss
  91.      structure containing the following members:
  92.  
  93.           _cccc_hhhh_aaaa_rrrr   _****_ssss_rrrr______nnnn_aaaa_mmmm_eeee_;;;;         _////_**** _pppp_aaaa_tttt_hhhh_nnnn_aaaa_mmmm_eeee _oooo_ffff _rrrr_eeee_ssss_oooo_uuuu_rrrr_cccc_eeee _****_////
  94.           _oooo_ffff_ffff______tttt  _ssss_rrrr______ssss_tttt_aaaa_rrrr_tttt_;;;;         _////_**** _oooo_ffff_ffff_ssss_eeee_tttt _tttt_oooo _ssss_tttt_aaaa_rrrr_tttt _oooo_ffff _ssss_wwww_aaaa_pppp _aaaa_rrrr_eeee_aaaa _****_////
  95.           _oooo_ffff_ffff______tttt  _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh_;;;;        _////_**** _llll_eeee_nnnn_gggg_tttt_hhhh _oooo_ffff _ssss_wwww_aaaa_pppp _aaaa_rrrr_eeee_aaaa _****_////
  96.      _ssss_rrrr______ssss_tttt_aaaa_rrrr_tttt and _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh are specified in 512-byte blocks.
  97.  
  98.      When _SSSS_CCCC______LLLL_IIII_SSSS_TTTT is specified, _a_r_g is a pointer to a _ssss_wwww_aaaa_pppp_tttt_aaaa_bbbb_llll_eeee structure
  99.      containing the following members:
  100.  
  101.           _iiii_nnnn_tttt            _ssss_wwww_tttt______nnnn_;;;;    _////_**** _nnnn_uuuu_mmmm_bbbb_eeee_rrrr _oooo_ffff _ssss_wwww_aaaa_pppp_eeee_nnnn_tttt_ssss _ffff_oooo_llll_llll_oooo_wwww_iiii_nnnn_gggg _****_////
  102.           _ssss_tttt_rrrr_uuuu_cccc_tttt _ssss_wwww_aaaa_pppp_eeee_nnnn_tttt _ssss_wwww_tttt______eeee_nnnn_tttt_[[[[_]]]]_;;;;_////_**** _aaaa_rrrr_rrrr_aaaa_yyyy _oooo_ffff _ssss_wwww_tttt______nnnn _ssss_wwww_aaaa_pppp_eeee_nnnn_tttt_ssss _****_////
  103.      A _ssss_wwww_aaaa_pppp_eeee_nnnn_tttt structure contains the following members:
  104.  
  105.           _cccc_hhhh_aaaa_rrrr        _****_ssss_tttt_eeee______pppp_aaaa_tttt_hhhh_;;;;   _////_**** _nnnn_aaaa_mmmm_eeee _oooo_ffff _tttt_hhhh_eeee _ssss_wwww_aaaa_pppp _ffff_iiii_llll_eeee _****_////
  106.           _oooo_ffff_ffff______tttt       _ssss_tttt_eeee______ssss_tttt_aaaa_rrrr_tttt_;;;;   _////_**** _ssss_tttt_aaaa_rrrr_tttt_iiii_nnnn_gggg _bbbb_llll_oooo_cccc_kkkk _ffff_oooo_rrrr _ssss_wwww_aaaa_pppp_pppp_iiii_nnnn_gggg _****_////
  107.           _oooo_ffff_ffff______tttt       _ssss_tttt_eeee______llll_eeee_nnnn_gggg_tttt_hhhh_;;;;  _////_**** _llll_eeee_nnnn_gggg_tttt_hhhh _oooo_ffff _ssss_wwww_aaaa_pppp _aaaa_rrrr_eeee_aaaa _****_////
  108.           _llll_oooo_nnnn_gggg        _ssss_tttt_eeee______pppp_aaaa_gggg_eeee_ssss_;;;;   _////_**** _nnnn_uuuu_mmmm_bbbb_eeee_rrrr _oooo_ffff _pppp_aaaa_gggg_eeee_ssss _ffff_oooo_rrrr _ssss_wwww_aaaa_pppp_pppp_iiii_nnnn_gggg _****_////
  109.           _llll_oooo_nnnn_gggg        _ssss_tttt_eeee______ffff_rrrr_eeee_eeee_;;;;    _////_**** _nnnn_uuuu_mmmm_bbbb_eeee_rrrr _oooo_ffff _ssss_tttt_eeee______pppp_aaaa_gggg_eeee_ssss _ffff_rrrr_eeee_eeee _****_////
  110.           _llll_oooo_nnnn_gggg        _ssss_tttt_eeee______ffff_llll_aaaa_gggg_ssss_;;;;   _////_**** _SSSS_TTTT______IIII_NNNN_DDDD_EEEE_LLLL _bbbb_iiii_tttt _ssss_eeee_tttt _iiii_ffff _ssss_wwww_aaaa_pppp _ffff_iiii_llll_eeee _****_////
  111.                                    _////_**** _iiii_ssss _nnnn_oooo_wwww _bbbb_eeee_iiii_nnnn_gggg _dddd_eeee_llll_eeee_tttt_eeee_dddd _****_////
  112.           _llll_oooo_nnnn_gggg        _ssss_tttt_eeee______vvvv_pppp_aaaa_gggg_eeee_ssss_;;;;  _////_**** _vvvv_iiii_rrrr_tttt_uuuu_aaaa_llll _pppp_aaaa_gggg_eeee_ssss _ffff_oooo_rrrr _ssss_wwww_aaaa_pppp _****_////
  113.           _llll_oooo_nnnn_gggg        _ssss_tttt_eeee______mmmm_aaaa_xxxx_pppp_aaaa_gggg_eeee_ssss_;;;;_////_**** _mmmm_aaaa_xxxx _pppp_aaaa_gggg_eeee_ssss _ssss_wwww_aaaa_pppp _cccc_aaaa_nnnn _gggg_rrrr_oooo_wwww _tttt_oooo _****_////
  114.           _ssss_hhhh_oooo_rrrr_tttt       _ssss_tttt_eeee______llll_ssss_wwww_aaaa_pppp_;;;;   _////_**** _llll_oooo_gggg_iiii_cccc_aaaa_llll _ssss_wwww_aaaa_pppp _#### _****_////
  115.           _ssss_iiii_gggg_nnnn_eeee_dddd _cccc_hhhh_aaaa_rrrr _ssss_tttt_eeee______pppp_rrrr_iiii_;;;;     _////_**** _ssss_wwww_aaaa_pppp _rrrr_eeee_ssss_oooo_uuuu_rrrr_cccc_eeee _pppp_rrrr_iiii_oooo_rrrr_iiii_tttt_yyyy _****_////
  116.  
  117.  
  118.  
  119.                                                                         PPPPaaaaggggeeee 2222
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126. sssswwwwaaaappppccccttttllll((((2222))))                                                          sssswwwwaaaappppccccttttllll((((2222))))
  127.  
  128.  
  129.  
  130.      _SSSS_CCCC______LLLL_IIII_SSSS_TTTT causes _ssss_wwww_aaaa_pppp_cccc_tttt_llll to return at most _ssss_wwww_tttt______nnnn entries.  The return value
  131.      of _ssss_wwww_aaaa_pppp_cccc_tttt_llll is the number actually returned.  The _SSSS_TTTT______IIII_NNNN_DDDD_EEEE_LLLL bit is turned
  132.      on in _ssss_tttt_eeee______ffff_llll_aaaa_gggg_ssss if the swap file is in the process of being deleted.  The
  133.      _SSSS_TTTT______SSSS_TTTT_AAAA_LLLL_EEEE bit is turned on in _ssss_tttt_eeee______ffff_llll_aaaa_gggg_ssss if the swap file is on an NFS
  134.      mounted file system, and the file on the server was removed.  No further
  135.      allocations will be made from a swap resource that has this bit set.  The
  136.      _SSSS_TTTT______LLLL_OOOO_CCCC_AAAA_LLLL bit is turned on in _ssss_tttt_eeee______ffff_llll_aaaa_gggg_ssss if the swap resource resides on a
  137.      local disk.  The _SSSS_TTTT______IIII_OOOO_EEEE_RRRR_RRRR bit is turned on in _ssss_tttt_eeee______ffff_llll_aaaa_gggg_ssss if any errors
  138.      have occurred when reading or writing the swap resource.  Allocations
  139.      will still be satisfied from swap resources with this bit set.  The
  140.      _SSSS_TTTT______EEEE_AAAA_CCCC_CCCC_EEEE_SSSS bit is turned on in _ssss_tttt_eeee______ffff_llll_aaaa_gggg_ssss if a permission error occurs when
  141.      attempting to write to the swap resource.  This occurs most often when
  142.      user id 0 does not have the appropriate privileges on an NFS mounted file
  143.      system.  No further allocations will be made from a swap resource that
  144.      has this bit set.  The _SSSS_TTTT______BBBB_OOOO_OOOO_TTTT_SSSS_WWWW_AAAA_PPPP bit is turned on in _ssss_tttt_eeee______ffff_llll_aaaa_gggg_ssss if this
  145.      swap device was the initial swap device configured at boot time.
  146.  
  147.      When _SSSS_CCCC______GGGG_EEEE_TTTT_NNNN_SSSS_WWWW_PPPP is specified, _ssss_wwww_aaaa_pppp_cccc_tttt_llll returns as its value the number of
  148.      swap resources in use.  _a_r_g is ignored for this operation.
  149.  
  150.      _SSSS_CCCC______LLLL_RRRR_EEEE_MMMM_OOOO_VVVV_EEEE causes _ssss_wwww_aaaa_pppp_cccc_tttt_llll removes the logical swap resource specified by
  151.      _a_r_g.
  152.  
  153.      When _SSSS_CCCC______GGGG_EEEE_TTTT_FFFF_RRRR_EEEE_EEEE_SSSS_WWWW_AAAA_PPPP is specified, _ssss_wwww_aaaa_pppp_cccc_tttt_llll copies the number of currently
  154.      free swap blocks (512 bytes) to the address given by _aaaa_rrrr_gggg.  This is the
  155.      sum of each swap area's _ssss_tttt_eeee______ffff_rrrr_eeee_eeee value, converted to 512 byte blocks.
  156.  
  157.      When _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_VVVV_IIII_RRRR_TTTT is specified, _ssss_wwww_aaaa_pppp_cccc_tttt_llll copies the total number of
  158.      virtual swap blocks (512 bytes) to the address given by _aaaa_rrrr_gggg.  This is the
  159.      sum of each swap area's _ssss_tttt_eeee______vvvv_pppp_aaaa_gggg_eeee_ssss value, converted to 512 byte blocks.
  160.  
  161.      When _SSSS_CCCC______GGGG_EEEE_TTTT_RRRR_EEEE_SSSS_VVVV_SSSS_WWWW_AAAA_PPPP is specified, _ssss_wwww_aaaa_pppp_cccc_tttt_llll copies the number of logical
  162.      swap blocks (512 bytes) that have been reserved by all existing processes
  163.      to the address given by _aaaa_rrrr_gggg.  When this value is greater than the value
  164.      returned by _SSSS_CCCC______GGGG_EEEE_TTTT_LLLL_SSSS_WWWW_AAAA_PPPP_TTTT_OOOO_TTTT minus the value returned by _SSSS_CCCC______SSSS_WWWW_AAAA_PPPP_MMMM_AAAA_XXXX, there
  165.      is the potential for deadlock if every process suddenly requires all that
  166.      it has reserved.
  167.  
  168.      When _SSSS_CCCC______GGGG_EEEE_TTTT_LLLL_SSSS_WWWW_AAAA_PPPP_TTTT_OOOO_TTTT is specified, _ssss_wwww_aaaa_pppp_cccc_tttt_llll copies the current number of
  169.      logical swap blocks (512 bytes) to the address given by _aaaa_rrrr_gggg.  This is
  170.      value is the sum of the amount of physical memory potentially available
  171.      for processes plus the number of virtual swap blocks plus the number of
  172.      physical swap blocks.
  173.  
  174.      When _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_TTTT_OOOO_TTTT is specified, _ssss_wwww_aaaa_pppp_cccc_tttt_llll copies the current number of
  175.      physical swap blocks (512 bytes) to the address given by _aaaa_rrrr_gggg.  This is
  176.      the sum of each swap area's _ssss_tttt_eeee______pppp_aaaa_gggg_eeee_ssss value, converted to 512 byte
  177.      blocks.
  178.  
  179.      When _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_MMMM_AAAA_XXXX is specified, _ssss_wwww_aaaa_pppp_cccc_tttt_llll copies the maximum number of
  180.      swap blocks (512 bytes) to the address given by _aaaa_rrrr_gggg.  This is the sum of
  181.      each swap area's _ssss_tttt_eeee______mmmm_aaaa_xxxx_pppp_aaaa_gggg_eeee_ssss value, converted to 512 byte blocks.  Since
  182.  
  183.  
  184.  
  185.                                                                         PPPPaaaaggggeeee 3333
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192. sssswwwwaaaappppccccttttllll((((2222))))                                                          sssswwwwaaaappppccccttttllll((((2222))))
  193.  
  194.  
  195.  
  196.      growable swap areas is not yet supported this value will always be the
  197.      same as that returned by _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_TTTT_OOOO_TTTT.
  198.  
  199.      When specifying _SSSS_CCCC______GGGG_EEEE_TTTT_FFFF_RRRR_EEEE_EEEE_SSSS_WWWW_AAAA_PPPP, _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_VVVV_IIII_RRRR_TTTT, _SSSS_CCCC______GGGG_EEEE_TTTT_RRRR_EEEE_SSSS_VVVV_SSSS_WWWW_AAAA_PPPP,
  200.      _SSSS_CCCC______GGGG_EEEE_TTTT_LLLL_SSSS_WWWW_AAAA_PPPP_TTTT_OOOO_TTTT, _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_TTTT_OOOO_TTTT, or _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_MMMM_AAAA_XXXX, _aaaa_rrrr_gggg should be a pointer
  201.      to a variable of type _o_f_f__t.
  202.  
  203.      The _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD, _SSSS_CCCC______AAAA_DDDD_DDDD, and _SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE functions will fail if the calling
  204.      process does not have appropriate privilege.
  205.  
  206. RRRREEEETTTTUUUURRRRNNNN VVVVAAAALLLLUUUUEEEE
  207.      Upon successful completion, the function _ssss_wwww_aaaa_pppp_cccc_tttt_llll returns a value of _0000 for
  208.      _SSSS_CCCC______AAAA_DDDD_DDDD, _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD, _SSSS_CCCC______GGGG_EEEE_TTTT_RRRR_EEEE_SSSS_VVVV_SSSS_WWWW_AAAA_PPPP, _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_MMMM_AAAA_XXXX, _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_VVVV_IIII_RRRR_TTTT,
  209.      _SSSS_CCCC______GGGG_EEEE_TTTT_FFFF_RRRR_EEEE_EEEE_SSSS_WWWW_AAAA_PPPP, _SSSS_CCCC______GGGG_EEEE_TTTT_SSSS_WWWW_AAAA_PPPP_TTTT_OOOO_TTTT, _SSSS_CCCC______GGGG_EEEE_TTTT_LLLL_SSSS_WWWW_AAAA_PPPP_TTTT_OOOO_TTTT, or _SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE, the number
  210.      of _ssss_tttt_rrrr_uuuu_cccc_tttt _ssss_wwww_aaaa_pppp_eeee_nnnn_tttt entries actually returned for _SSSS_CCCC______LLLL_IIII_SSSS_TTTT, or the number of
  211.      swap resources in use for _SSSS_CCCC______GGGG_EEEE_TTTT_NNNN_SSSS_WWWW_PPPP.  Upon failure, the function _ssss_wwww_aaaa_pppp_cccc_tttt_llll
  212.      returns a value of _----_1111 and sets _eeee_rrrr_rrrr_nnnn_oooo to indicate an error.
  213.  
  214. EEEERRRRRRRROOOORRRRSSSS
  215.      Under the following conditions, the function _ssss_wwww_aaaa_pppp_cccc_tttt_llll fails and sets _eeee_rrrr_rrrr_nnnn_oooo
  216.      to:
  217.  
  218.      _EEEE_EEEE_XXXX_IIII_SSSS_TTTT      Part of the range specified by _ssss_rrrr______ssss_tttt_aaaa_rrrr_tttt and _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh is
  219.                  already being used for swapping on the specified resource
  220.                  (_SSSS_CCCC______AAAA_DDDD_DDDD or _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD).
  221.  
  222.      _EEEE_FFFF_AAAA_UUUU_LLLL_TTTT      _a_r_g, _ssss_rrrr______nnnn_aaaa_mmmm_eeee, or _ssss_tttt_eeee______pppp_aaaa_tttt_hhhh points outside the allocated
  223.                  address space.
  224.  
  225.      _EEEE_IIII_NNNN_VVVV_AAAA_LLLL      _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh is not -1 and either _ssss_rrrr______mmmm_aaaa_xxxx_llll_eeee_nnnn_gggg_tttt_hhhh is not equal to
  226.                  _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh, or _ssss_rrrr______vvvv_llll_eeee_nnnn_gggg_tttt_hhhh is less than either _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh or
  227.                  _ssss_rrrr______mmmm_aaaa_xxxx_llll_eeee_nnnn_gggg_tttt_hhhh.
  228.  
  229.      _EEEE_NNNN_XXXX_IIII_OOOO       The pathname specified for _SSSS_CCCC______AAAA_DDDD_DDDD or _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD specifies a
  230.                  non-configured block device or the block device does not have
  231.                  a _s_i_z_e routine.
  232.  
  233.      _EEEE_IIII_NNNN_VVVV_AAAA_LLLL      _ssss_rrrr______pppp_rrrr_iiii is not equal to -1 and it greater than 7.
  234.  
  235.      _EEEE_NNNN_OOOO_SSSS_PPPP_CCCC      There are no more logical swap devices available (maximum
  236.                  255) (_SSSS_CCCC______AAAA_DDDD_DDDD or _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD).
  237.  
  238.      _EEEE_BBBB_UUUU_SSSS_YYYY       The in-use pages for the swap area to be deleted cannot at
  239.                  this time be reclaimed (_SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE or _SSSS_CCCC______LLLL_RRRR_EEEE_MMMM_OOOO_VVVV_EEEE).
  240.  
  241.      _EEEE_BBBB_UUUU_SSSS_YYYY       The specified resource is already in use as a swap area
  242.                  (_SSSS_CCCC______AAAA_DDDD_DDDD or _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD).
  243.  
  244.      _EEEE_IIII_NNNN_VVVV_AAAA_LLLL      The specified function value is not valid, the path specified
  245.                  is not a swap resource (_SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE), part of the range
  246.                  specified by _ssss_rrrr______ssss_tttt_aaaa_rrrr_tttt and _ssss_rrrr______llll_eeee_nnnn_gggg_tttt_hhhh lies outside the resource
  247.                  specified (_SSSS_CCCC______AAAA_DDDD_DDDD or _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD), or the specified swap area
  248.  
  249.  
  250.  
  251.                                                                         PPPPaaaaggggeeee 4444
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258. sssswwwwaaaappppccccttttllll((((2222))))                                                          sssswwwwaaaappppccccttttllll((((2222))))
  259.  
  260.  
  261.  
  262.                  is less than one page (_SSSS_CCCC______AAAA_DDDD_DDDD or _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD).
  263.  
  264.      _EEEE_IIII_SSSS_DDDD_IIII_RRRR      The path specified for _SSSS_CCCC______AAAA_DDDD_DDDD or _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD is a directory.
  265.  
  266.      _EEEE_LLLL_OOOO_OOOO_PPPP       Too many symbolic links were encountered in translating the
  267.                  pathname provided to _SSSS_CCCC______AAAA_DDDD_DDDD, _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD, or _SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE .
  268.  
  269.      _EEEE_NNNN_AAAA_MMMM_EEEE_TTTT_OOOO_OOOO_LLLL_OOOO_NNNN_GGGGThe length of a component of the path specified for _SSSS_CCCC______AAAA_DDDD_DDDD,
  270.                  _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD, or _SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE exceeds _{{{{_NNNN_AAAA_MMMM_EEEE______MMMM_AAAA_XXXX_}}}} characters or the
  271.                  length of the path exceeds _{{{{_PPPP_AAAA_TTTT_HHHH______MMMM_AAAA_XXXX_}}}} characters and
  272.                  _{{{{______PPPP_OOOO_SSSS_IIII_XXXX______NNNN_OOOO______TTTT_RRRR_UUUU_NNNN_CCCC_}}}} is in effect.
  273.  
  274.      _EEEE_NNNN_OOOO_EEEE_NNNN_TTTT      The pathname specified for _SSSS_CCCC______AAAA_DDDD_DDDD, _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD, or _SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE
  275.                  does not exist.
  276.  
  277.      _EEEE_NNNN_OOOO_MMMM_EEEE_MMMM      An insufficient number of _ssss_tttt_rrrr_uuuu_cccc_tttt _ssss_wwww_aaaa_pppp_eeee_nnnn_tttt structures were
  278.                  provided to _SSSS_CCCC______LLLL_IIII_SSSS_TTTT, or there were insufficient system
  279.                  storage resources available during an _SSSS_CCCC______AAAA_DDDD_DDDD, _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD, or
  280.                  _SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE, or the system would not have enough swap space
  281.                  after an _SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE.
  282.  
  283.      _EEEE_NNNN_OOOO_SSSS_YYYY_SSSS      The pathname specified for _SSSS_CCCC______AAAA_DDDD_DDDD, _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD, or _SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE is
  284.                  not a file or block special device.  The file system on which
  285.                  pathname resides does not permit mapping or swapping.
  286.  
  287.      _EEEE_NNNN_OOOO_TTTT_DDDD_IIII_RRRR     Pathname provided to _SSSS_CCCC______AAAA_DDDD_DDDD, _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD, or _SSSS_CCCC______RRRR_EEEE_MMMM_OOOO_VVVV_EEEE
  288.                  contained a component in the path prefix that was not a
  289.                  directory.
  290.  
  291.      _EEEE_PPPP_EEEE_RRRR_MMMM       The process does not have appropriate privilege.
  292.  
  293.      _EEEE_RRRR_OOOO_FFFF_SSSS       The pathname specified for _SSSS_CCCC______AAAA_DDDD_DDDD or _SSSS_CCCC______SSSS_GGGG_IIII_AAAA_DDDD_DDDD is a read-only
  294.                  file system.
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.                                                                         PPPPaaaaggggeeee 5555
  318.  
  319.  
  320.  
  321.